package com.weng.coder.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.weng.framework.dao.mybatis.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 项目名称实体Bean
 *
 * @作者 wengzhonghui
 * @创建时间 2018-02-24 15:55:31
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("coder_project_details")
public class Project extends BaseEntity<Project> {


    @TableField(value="ID")
    private String id;//ID
    
    @TableField(value="CODE")
    private String code;//项目编码
    
    @TableField(value="NAME")
    private String name;//项目名称
    
    @TableField(value="STATUS")
    private Integer status;//状态
    
    @TableField(value="REMARKS")
    private String remarks;//备注
    
    @TableField(value="COMPANY_CODE")
    private String companyCode;//公司编码
    
    @TableField(value="BASE_PROJECT_CODE")
    private String baseProjectCode;//对应基础项目类型编码，根据项目构建的不同，可能有多种不同的编码
    
    @TableField(value="DB_CATEGORY")
    private String dbCategory;//数据库类型
    
    @TableField(value="DB_URL")
    private String dbUrl;//数据库JDBC连接URL
    
    @TableField(value="DB_USERNAME")
    private String dbUsername;//数据库用户名
    
    @TableField(value="DB_PASSWORD")
    private String dbPassword;//数据库密码
    
    @TableField(value="DB_NAME")
    private String dbName;//数据库名称
    
    @TableField(value="API_PREFIX")
    private String apiPrefix;//前端api请求前缀,如/user-center
    
    @TableField(value="IS_BUILD_IN")
    private Integer isBuildIn;//是否内置项目,1是0否

    @TableField(value="IS_CATALOG")
    private Integer isCatalog;//生成代码是否创建目录,1是0否

    //代码包路径
    @TableField(value="PKG")
    private String pkg;

		public Project() {
		}

	public Project (String id, String code, String name, Integer status, String remarks, String companyCode
					, String baseProjectCode, String dbCategory, String dbUrl, String dbUsername, String dbPassword
					, String dbName,String apiPrefix,Integer isBuildIn,String pkg, Integer isCatalog) {
		this.id = id;
		this.code = code;
		this.name = name;
		this.status = status;
		this.remarks = remarks;
		this.companyCode = companyCode;
		this.baseProjectCode = baseProjectCode;
		this.dbCategory = dbCategory;
		this.dbUrl = dbUrl;
		this.dbUsername = dbUsername;
		this.dbPassword = dbPassword;
		this.dbName = dbName;
		this.apiPrefix = apiPrefix;
		this.isBuildIn = isBuildIn;
		this.pkg = pkg;
		this.isCatalog = isCatalog;
	}

		public Project(String id, String code, String name, Integer status, String remarks, String companyCode, String baseProjectCode, String dbCategory, String dbUrl, String dbUsername, String dbPassword, String dbName, String apiPrefix, Integer isBuildIn, Integer isCatalog, String pkg) {
			this.id = id;
			this.code = code;
			this.name = name;
			this.status = status;
			this.remarks = remarks;
			this.companyCode = companyCode;
			this.baseProjectCode = baseProjectCode;
			this.dbCategory = dbCategory;
			this.dbUrl = dbUrl;
			this.dbUsername = dbUsername;
			this.dbPassword = dbPassword;
			this.dbName = dbName;
			this.apiPrefix = apiPrefix;
			this.isBuildIn = isBuildIn;
			this.isCatalog = isCatalog;
			this.pkg = pkg;
		}
}
